package com.train.daily.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.train.daily.dto.train.DailyTrainExistsDTO;
import com.train.daily.dto.train.DailyTrainValidationDTO;
import com.train.daily.resp.train.DailyTrainPageResp;
import com.train.common.resp.PageResp;
import com.train.daily.dto.train.DailyTrainAddOrEditDTO;
import com.train.daily.dto.train.DailyTrainPageDTO;
import com.train.daily.po.DailyTrainPO;
import com.train.daily.resp.train.DailyTrainQueryResp;

import java.util.List;

/**
 * @author baitiaojun
 * @description 针对表【dailyTrain(每日车次)】的数据库操作Service
 * @createDate 2025-02-28 17:55:24
 */
public interface DailyTrainService extends IService<DailyTrainPO> {

    void addOrEditDailyTrain(DailyTrainAddOrEditDTO dailyTrainAddOrEditDTO);

    PageResp<DailyTrainPageResp> pageList(DailyTrainPageDTO dailyTrainPageDTO);

    void remove(Long id);

    void generateDailyTrain(String date);

    void existsTrain(DailyTrainExistsDTO dto);

    void validTrainTime(DailyTrainValidationDTO dto);

    DailyTrainQueryResp queryTrainByTrainCodeDate(String trainCode, String date);
}
